Di dunia Rust, kompiler adalah lini pertahanan pertama Anda, menangkap kebocoran memori dan ketidaksesuaian tipe sebelum terjadi. Namun, kompiler tidak dapat mengetahui tujuan Anda tujuan. Di sinilah Pengujian Otomatis masuk sebagai "jaring pengaman" untuk kebenaran logika.
1. Pasangan Pendukung
Sementara sistem tipe menangani integritas struktural, pengujian memverifikasi perilaku fungsional. Dalam sebuah proyek pustaka, kompiler memastikan Anda tidak melewatkan String ke fungsi matematika, tetapi hanya pengujian yang memastikan bahwa $f(x) = y$ menghasilkan hasil yang diharapkan.
2. Siklus Standar
Pengujian Rust mengikuti tiga langkah kaku:
- Persiapan: Inisialisasi data (misalnya, membuat instans pustaka).
- Jalankan: Jalankan logika spesifik yang sedang diselidiki.
- Tegaskan: Verifikasi keadaan menggunakan makro seperti
assert_eq!.
Toolchain terintegrasi mendukung Uji Dokumen (contoh yang dapat dijalankan dalam dokumentasi) dan Uji Benchmark untuk memastikan kode Anda tetap sangat cepat.